package com.bear.fastrepair.entity

/**
 * 用户注册信息
 * @property account String 账号
 * @property avatar String 头像
 * @property password String 密码
 * @property regionCode String 区域编码
 * @property regionText String 区域名
 * @property roleCode String 角色编码
 * @property tel String 电话号码
 * @property userName String 用户名
 * @constructor
 */

data class CreateManagerInfo(
    val account: String,
    val avatar: String,
    val password: String,
    val regionCode: String,
    val regionText: String = "",
    val roleCode: String,
    val tel: String,
    val userName: String
)

/**
 * 管理员用户登录
 * @property account String 账号
 * @property password String 密码
 * @property verificationCode String? 验证码
 * @constructor
 */
data class ManagerLoginInfo(
    val account: String,
    val password: String,
    val verificationCode: String? = ""
)

/**
 * 获取用户信息请求回复体
 * @property code Int 返回编码
 * @property `data` [ManagerInfo] 管理员信息
 * @property msg String 返回信息
 * @constructor
 */
data class ManagerInfoResponse(
    val code: Int,
    val `data`: ManagerInfo,
    val msg: String
)

/**
 * 获取管理员信息内容
 * @property account String 账号
 * @property avatar String 头像
 * @property createTime String 创建时间
 * @property id String 管理员id
 * @property regionCode String 区域编码
 * @property regionText String 区域名
 * @property roleCode String 角色编码
 * @property roleCodeText String 角色编码（文案）
 * @property tel String 电话号码
 * @property updateTime String 更新时间
 * @property userName String 用户名
 * @constructor
 */
data class ManagerInfo(
    val account: String,
    val avatar: String,
    val createTime: String,
    val id: String,
    val regionCode: String,
    val regionText: String,
    val roleCode: String,
    val roleCodeText: String,
    val tel: String,
    val updateTime: String,
    val userName: String
)

/**
 * 查询管理员用户信息（分页）
 * @property code Int 返回编码
 * @property `data` [ManagerPage] 但也数据
 * @property msg String 返回信息
 * @constructor
 */
data class ManagerInfoPage(
    val code: Int,
    val `data`: ManagerPage,
    val msg: String
)

/**
 * 单页管理员用户信息列表
 * @property pageTotal Int 页总数
 * @property records List<ManagerInfo> 单页员工信息列表
 * @property total Int 记录总数
 * @constructor
 */
data class ManagerPage(
    val pageTotal: Int,
    val records: List<ManagerInfo>,
    val total: Int
)

/**
 * 密码重置
 * @property id String  id
 * @property password String 密码
 * @property repeatPassword String 二次确认密码
 * @constructor
 */
data class ResetPasswordBean(
    val id: String? = null,
    val password: String,
    val repeatPassword: String
)

